home *** CD-ROM | disk | FTP | other *** search
/ Aminet 20 / Aminet 20 (1997)(GTI - Schatztruhe)[!][Aug 1997].iso / Aminet / dev / src / DICE_SharedLib.lha / README < prev    next >
Text File  |  1997-06-23  |  3KB  |  96 lines

  1. //
  2. //        Example Shared Library Code
  3. //        Compiles with DICE
  4. //        
  5. //        By Wez Furlong <wez@twinklestar.demon.co.uk>
  6. //
  7. //        Based on code by Geert Uytterhoeven and Matt Dillon
  8. //
  9. //        This source was produced:    Monday 23-Jun-1997 
  10. //
  11. //        DISCLAIMER
  12. //
  13. //        Please read the code FULLY before use... I could have put ANYTHING in
  14. //        here; I may have the code format your bootdrive for example.
  15. //
  16. //        NEVER trust example code without fully understanding what it does.
  17. //
  18. //        This code comes with no warranty; I am NOT responsible for any damage
  19. //        that may ensue from its use, be it physical, mental or otherwise.
  20. //
  21. //        This code may be modified, so long as the names of myself, Geert and
  22. //        Matt are mentioned within any release or distribution produced using it,
  23. //        and a copy sent to myself.
  24. //
  25. //        This code may be redistributed freely; no profit is allowed to be made
  26. //        from its distribution.
  27. //
  28. //        This code may be included on an Aminet or Fred Fish CD.
  29. //
  30.  
  31. This is an example of how to program a shared library under DICE.
  32.  
  33. It builds the library, pragmas and a link-lib (for stubs).
  34.  
  35. It does NOT make any fancy auto-open tags; it is generally better programming
  36. practice to open the libraries you need yourself anyway.
  37.  
  38. Defined in the example.h file is the library base structure that your library
  39. will use. This can be extended with Semaphores, Locks, Lists etc. to suit the
  40. purpose of your library.
  41.  
  42. Please read the code fully and try and understand what each part does before
  43. you compile and run it. If you don't understand it, then its useless to you.
  44.  
  45.  
  46. Building & Extending
  47. --------------------
  48.  
  49. The library is built using the DMakefile. Simply type 'dmake' and it will
  50. build for you.
  51.  
  52. If you alter the headers, use 'dmake clean' to wipe out any objects that may
  53. have incorrect structure definitions, and then type 'dmake'.
  54.  
  55. Add extra modules in the SRCS= line, but make sure that the LibHeader module
  56. is first in the link chain - this will prevent the library from being run
  57. accidentally.
  58.  
  59. The name of the file produced by dmake is set by the PROJECT= line in the
  60. Dmakefile. Change this to alter the name of the final library file. If you do
  61. this (which is quite likely (and a good idea), otherwise there would be loads of
  62. 'example.library's around... :), then make sure that you change the names of
  63. the files that are used to build others by dmake (the .fd file is one), and
  64. also that you change the library name in the magic structures that tell Exec
  65. the object is a library. And also anywhere else it may crop up... :)
  66.  
  67. The library has automated revision control, provided by uprev. The files with
  68. the .rev and .ver suffixes contain the revision and version numbers for the
  69. library. It is strongly suggested that you use a version number of 37 for 3.0
  70. compatible or 39 for 3.0 compatible: ie: keep in line with the version number
  71. of your target machines kickstart. This will make it easier for the end user
  72. to figure out what version and how compatible the library is.
  73.  
  74. Testing
  75. -------
  76.  
  77. Included is a very simple program that posts some strings into the library,
  78. and then recalls them.
  79.  
  80. To build it, type 'dcc -Iobjects/ test.c', after you have built the
  81. library.
  82.  
  83. References
  84. ----------
  85.  
  86. The relevant Rom Kernel Manuals (if you can get them!) and the Developer CD
  87. from Amiga International.
  88.  
  89. The Dev CD is highly recommended for any programming you may do on the amiga.
  90.  
  91. Thats All
  92. ---------
  93.  
  94. Hope I haven't left out anything important :)
  95.  
  96.